The present invention relates to stackable units in packet-based communication systems and in particular to xe2x80x98stackablexe2x80x99 hub units which can be xe2x80x98stackedxe2x80x99 or connected so that the units form a single logical entity.
When units are stacked to form a single logical device such as a hub or switch, a user connected to a port of any one of the units can send packets to or receive packets from users connected to any of the ports on any of the units, as if all the ports were ports of a single device. In such a system, the units have to be connected to form a closed path or ring by means of which packets can circulate from the unit having the port at which they are received to the unit having the port to which they need to be forwarded.
It is necessary to provide some means of arbitration between requests by the units for access to the ring, that is to say for the ability to place a packet on the ring. This may be achieved in practice, as disclosed in GB patent application number 9812081.9 filed Jun. 5, 1998, and in the corresponding U.S. patent application Ser. No. 09/207655, in the name Brewer et al, filed Dec. 9, 1998, by providing in each of the units a state machine which enables each unit to request access to the ring by forming an arbitration packet resembling an Ethernet packet but containing a header which defines levels of priority, and other status information. Broadly, each of the units is responsive to packet headers circulating with arbitration and priority fields to conduct an arbitration process which enables one and only one of the units to be a master which supplies packets to the ring until it has no more packets to supply, whereupon another unit requesting access to the ring can become the master.
In order to enable units to operate in this manner, the aforementioned patent applications describe a physical structure in which each unit has a two duplex ports, known as the xe2x80x9cdownxe2x80x9d and xe2x80x9cupxe2x80x9d ports respectively. Each of the units defines two signal paths, one proceeding from the xe2x80x9cdownxe2x80x9d port to the xe2x80x9cupxe2x80x9d port and the other in the reverse direction. The first of these paths may contain the arbitration process by which in normal operation of the stack the identity of the master unit is established and, for that unit, packets are allowed to enter the ring. The second path is a return path by means of which packets return around the ring. Each unit is so organised that if there is no connection to a particular port, packets or frames on the path to that port will bypass the port and be transmitted back along the other path towards the other port of the same unit. If a port is connected to a port on another hub unit, then a packet arriving at that port will be forwarded to the other hub unit. The units are, or should be, connected so that one, and only one of them is at the xe2x80x98bottomxe2x80x99 of the stack. Such a unit should have no unit connected to its xe2x80x98downxe2x80x99 port. It will preferably be the only unit in an idle master state as a preliminary to the arbitration process which can occur only if at least one unit needs access to the ring for placing packets thereon.
In a practical system up to eight units can be connected together using connection cable and appropriate connectors. A facility which is desirable in such a system is the use of a xe2x80x9cresilientxe2x80x9d or loop-back cable which enables the ring to be completed even if there is a failure of a single unit within the stack. It is also desirable to enable the xe2x80x9chotxe2x80x9d insertion or removal of units, that is to say the insertion or removal of a unit in an operational stack without requiring cessation of the operation of the stack or its powering down.
Since a multiplicity of units can physically be connected in a large selection of different ways, including ways which may be impermissible, it is highly desirable that the units incorporate a configuration process which will automatically select a single unit to be designated as the bottom of the stack.
The main object of the present invention is to provide such a configuration process. Other objects of the invention are to accommodate loop back and improper interconnection.
The invention is based on the use of configuration packets which are sent around the cascade ring. In a preferred form of the invention, these packets contain information indicating that they are not valid data or packet conveying information from one user to another, as well as other status and address information which enables a unit which receives a configuration packet to perform a comparison between status information in the configuration packet and status information of the unit. If a unit xe2x80x98losesxe2x80x99 the comparison process, it will forward any subsequent configuration packets, If the unit xe2x80x98winsxe2x80x99 the comparison it may source its own configuration packets. The information contained in the packets and the processing of the packets is selected so that the configuration process ends with a single one of the units deemed to be the bottom of the stack. The process is preferably conducted such that the stack performs a numbering programme which enables the detection of xe2x80x9cillegalxe2x80x9d stacks, that is to say stacks which are improperly connected using, for example, more than one loop back cable (hereinafter called xe2x80x98resilient cablexe2x80x99).